package com.sgb.kjwl.api.service;

import com.sgb.kjwl.model.entity.GoodsOrderEntity;
import com.sgb.kjwl.model.entity.CarInfo;
import com.sgb.kjwl.model.entity.ProListEntity;
import com.sgb.kjwl.model.entity.transport.CarHallEntity;
import com.sgb.kjwl.model.entity.transport.CarriageInfo;
import com.sgb.kjwl.model.entity.transport.GoodsInfoEntity;
import com.sgb.kjwl.model.entity.transport.MapCarEntity;
import com.sgb.kjwl.model.entity.transport.MapSourcesEntity;
import com.sgb.kjwl.model.entity.transport.SearchGoodsEntity;
import com.sgb.kjwl.model.entity.transport.VehicleHallMapEntity;
import com.swgk.core.base.model.entity.BaseEntity;

import java.util.List;
import java.util.Map;

import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;

/**
 * Describe:    用于本地调试的API接口类
 * Author:  yangLei
 * Date:    2021/12/14
 */
public interface LogisticsTestAPI {

    String Local_Base_Url = "http://192.168.2.65:2021/";

    //货源搜索
    @POST("logistics/operate/index/indexGoodsSourceList")
    Call<BaseEntity<ProListEntity<List<GoodsInfoEntity>>>> getFilterGoodsSourceList(@Body Map map);

    //货源搜索  (实体类不一样)
    @POST("logistics/operate/index/indexGoodsSourceList")
    Call<BaseEntity<ProListEntity<List<MapSourcesEntity>>>> getMapSourceList(@Body Map map);


    //地图找货(列表页面调用)
    @POST("logistics/operate/index/indexBiddingFindCars")
    Call<BaseEntity<ProListEntity<List<CarriageInfo>>>> getListCarFindForGoods(@Body Map map);

    //地图找货(地图页面调用)
    @POST("logistics/operate/index/indexBiddingFindCars")
    Call<BaseEntity<ProListEntity<List<MapCarEntity>>>> getMapCarFindForGoods(@Body Map map);


    //地图找车(列表页面调用)
    @POST("logistics/operate/index/indexVehicleLobbyList")
    Call<BaseEntity<ProListEntity<List<VehicleHallMapEntity>>>> getCarToList(@Body Map map);

    //地图找车(地图页面调用)
    @POST("logistics/operate/index/indexVehicleLobbyList")
    Call<BaseEntity<ProListEntity<List<VehicleHallMapEntity>>>> getCarToMap(@Body Map map);

    //找货车(首页调用)
    @POST("logistics/operate/index/indexVehicleLobbyList")
    Call<BaseEntity<ProListEntity<List<CarHallEntity>>>> getCarToMainPage(@Body Map map);

    //物流首页搜索--货物
    @POST("logistics/operate/index/indexSearchByGoodsSource")
    Call<BaseEntity<ProListEntity<List<SearchGoodsEntity>>>> getGoodsBySearch(@Body Map map);

    //搜索找车
    @POST("logistics/operate/index/indexSearchByDriverAuth")
    Call<BaseEntity<ProListEntity<List<CarHallEntity>>>> getCarsBySearch(@Body Map map);

    //获取所有车辆
    @GET("logistics/operate/driverAuth/select")
    Call<BaseEntity<List<CarInfo>>> getCarInfo();

    //普通货源-司机报价  企业、团队
    @POST("logistics/operate/goodsOffer/general/offer/impersonal")
    Call<BaseEntity<String>> goodsGeneralOfferImpersonal(@Body GoodsOrderEntity goodsOrderEntity);

    //发布/编辑普通/竞价货源
    @POST("logistics/operate/goodsSource/operatePublish")
    Call<BaseEntity> releaseCargo(@Body Map<String, Object> map);

}
